import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import vueJsx from '@vitejs/plugin-vue-jsx' //jsx支持
import eslintPlugin from 'vite-plugin-eslint'
import Components from 'unplugin-vue-components/vite' // 按需加载自定义组件
import { NaiveUiResolver } from 'unplugin-vue-components/resolvers' //引入UI组件库
import AutoImport from 'unplugin-auto-import/vite' //自动加载依赖包
// import proxy from './config/vite/proxy'
// https://vitejs.dev/config/
export default defineConfig({
  plugins: [
    vue(),
    vueJsx(),
    //vite-eslint浏览器报错窗口
    eslintPlugin({
      include: ['src/**/*js', 'src/**/*.vue', 'src/**/*.ts'],
      exclude: ['./node_modules/**'],
      cache: false
    }),
    //自动加载依赖
    AutoImport({
      imports: [
        'vue',
        'vue-router'
        // 'vue-i18n', '@vueuse/head', '@vueuse/core'
      ],
      // 可以选择auto-import.d.ts生成的位置，使用ts建议设置为'src/auto-import.d.ts'
      dts: 'src/auto-import.d.ts'
    }),
    //按需引入组件
    Components({
      dts: true,
      dirs: [], // 按需加载的文件夹
      resolvers: [NaiveUiResolver()] // NaiveUi按需加载
    })
  ],
  server: {
    hmr: { overlay: true }, // 禁用或配置 HMR 连接 设置 server.hmr.overlay 为 false 可以禁用服务器错误遮罩层
    // 服务配置
    port: 8000, // 指定服务器端口;
    open: false,
    cors: false,
    host: '0.0.0.0' // 支持从IP启动访问
    // proxy
  }
})
